Release history

41 releases in 65 days.

From the first release on 2026-06-26 to v1.14.0 on 8/30. It shipped as a read-only viewer for huge logs, could edit and save them 11 days later, reached 1.0 in 15 days, and then grew comparison, a transform toolbox, AI, and a ruler for counting columns. Every tag, dated.

41releases
65days
15days to 1.0
3most in one day (7/11)
9days, longest gap (8/5→8/14)
Release density — one bar = one release
6/26 7/1 7/11 7/21 7/31 8/10 8/20

The middle stretch is the dense one — three on 7/11 (1.0 and two fixes right after it) is the peak. From 1.8 on, the gaps widen and each release gets bigger.

A viewer, nothing more

v0.1 – v0.3 · 6/26 – 6/29

The first three releases aim at one thing: open a log that other tools choke on, and stay standing. Nothing can be written back yet.

0.16/26 First release. A viewer for huge files — mapped, not loaded, so a 10 GB log opens without filling memory
0.26/28 Search, filtered view (matching lines only), tail -f follow, copy
0.36/29 Several documents at once, sidebar, jump to line, font choice, recent files

Writing back, and a face

v0.4 – v0.7 · 7/7 – 7/9

After an eight-day gap, editing lands. This is where the viewer becomes an editor — and where structured text (CSV, NDJSON) gets its own way of being read.

0.47/7 Editing and saving. Replace, and save-as with a chosen encoding and line ending. The viewer becomes an editor
0.57/8 Font picker, display settings (tab width, line height, current-line highlight, cursor), colour themes
0.67/8 Structured view. CSV/TSV lined up into monospaced columns, NDJSON projected to the fields you pick — read-only, so the file stays as it was
0.77/9 Session restore — the tab list comes back, including unsaved new documents with their text — plus an About panel fixbuild did not launch

Making it shippable — 1.0

v0.8 – v1.0.3 · 7/10 – 7/12

Signed, notarised, and out as 1.0. Then two releases in a row spent on the worst kind of bug there is: unsaved text disappearing.

0.87/10 Fixes for a build that would not start (signing, universal binary), Finder integration, print/PDF, update notice, new icon
0.97/10 Signed with a Developer ID and notarised. Double-click opens it; no right-click trick needed
1.07/11 1.0. Open 10 GB, edit it, and save without ever leaving the file half-written
1.0.17/11 Fixed data loss: an unsaved new document could vanish when another file was opened
1.0.27/11 Unsaved text is written to a draft file on disk. Even a kill -9 gets it back on next launch
1.0.37/12 Fixed jump-to-line while typing with a Japanese input method

Comparing

v1.1 – v1.3 · 7/13 – 7/16

Four days on one question: what changed? Four ways in — two files, two open tabs, the clipboard, and two URLs.

1.17/13 Compare (diff). Side by side, highlighted by line and by character
1.1.17/13 Fixed “Compare two files…”, which silently did nothing
1.27/14 Merge. Pull a hunk across with the arrow, then save the result under a new name
1.2.17/14 Merge now goes the way the arrow points (→ takes the left side to the right)
1.37/16 Compare two URLs (https only — the shipped app has no ATS exception)

Filling the toolbox

v1.4 – v1.8 · 7/17 – 7/27

Eleven days of making the free core complete: query JSON in place, transform selections, own the look, and edit in more than one place at once.

1.47/17 JSON pretty-print plus a query box (⌥⌘J) — jmespath-style filtering in place, nothing written to disk
1.57/18 Text transform toolbox. Case conversion, HTML/URL/Base64 encode-decode, sort, dedupe, reverse, numbering, and piping the selection through a local command (⌥⌘R)
1.67/19 More appearance themes, and settings you can export and hand to someone else
1.77/19 Regex lookaround, ANSI colour, background opacity. The free core is feature-complete as planned
1.7.17/23 Join lines, indent and outdent in the Format menu
1.87/27 Multiple cursors (-click, ⌘D) and line display, plus case-preserving replace, parameterised numbering, and splitting lines on a delimiter

AI, and a new headline

v1.9 – v1.11.2 · 7/28 – 8/14

Bring your own API key and ask the log what went wrong. Then the pitch itself changes: not “a big-file editor” but “the editor for text you didn't write”.

1.97/28 AI, bring-your-own-key. Select the part of the log that failed and ask what it means. The key stays on your Mac
1.107/29 The answer streams in as it is written. Pick a model, test the connection, and only models that actually answered are remembered
1.10.17/29 Fixed ⌘F doing nothing in the editing pane for files under 8 MB — search, replace, ⌘L and per-pane undoreported by a user
1.10.27/30 Fixed OpenAI reasoning models (o4-mini, o3) being rejected with a 400
1.10.38/3 Two bugs found while filming a 5,816,535-row CSV: two menus left in English, and column widths measured from only the first 1,000 rows
1.118/5 A toolbar, and the new headline. Six default buttons, live grep while you type on small files, and search / filter / follow that keep working while the columns stay lined up
1.11.18/5 Fixed the search bar overlapping the structured-view banner
1.11.28/14 Changes made by other apps are picked up automatically — the file on screen keeps up with the file on disk

Counting columns

v1.12 – v1.13.0 · 8/15 – 8/28

The structured view only ever worked on formats with a delimiter. Fixed-width records — the ones banks and government systems still hand out — got nothing at all.

1.128/15 A column ruler, and fixed-width fields. Click a tick to drop a field boundary and drag it to adjust — or type the layout you already have, 1-8,9-14,15-40. The definition is remembered per file, and feeds the structured view as a fifth mode, so the records read as aligned columns
1.12.18/16 Floating panels can be dragged where you want them (and stay there), and the structured view now pins the column names above the text — drag a boundary in that strip to resize the column
1.12.28/17 Draw a guide and the text becomes columns — no reformatting, so it stays editable. Tab pads to the next field, ⌥Tab applies the layout to every line, and with no guides yet it derives one from the content
1.12.38/19 Compare the shape, not the values (⇧⌘F) — for test data beside production data, where only the format matters: rows that differ only in their values read as identical, while 2026-08-19 and 2026/08/19 stay a difference. Also fixed menu check marks and greying out, which had never worked
1.12.48/21 Filter the rows, and the columns fit what you filtered to. Widths were sampled from the first and last 1000 lines, so a long value that only appears in between was cut — on a 3-million-row CSV, filtering to 59 ERROR rows left a 34-character column showing con…. Also fixed small files getting an incoherent screen when the structured view was switched on while a filter was up
1.12.58/22 The lines around each match (grep -C). Filtering shows you the matching line and nothing else, but what went wrong is usually in the line before it. Type a number in the ± box, or press ⌥⌘] to open it one line at a time
1.12.68/27 Filtering, the way you left it. ⌘F reopens with the funnel in the state you last put it in — and moving to a pane that cannot filter no longer erases that intent
1.13.08/28 The way in. Pipe straight in (kubectl logs … | mreditor), and .gz / .zip open expanded — decided from the bytes, not the extension. Plus bookmarks: ⌘B to mark, ⌘; to step

Logs that are somewhere else

v1.14.0 · 8/30

Every log so far had to be on this machine. The ones you actually need are on a server, and the usual answer — copy it down first — stops being an answer at 10GB.

1.14.08/30 Open a log on another machine, without downloading it (⌃⌘O). ssh host:/var/log/app.log opens at the tail with real line numbers, and filtering runs over theregrep -n returns the matching lines and their numbers without transferring a byte of the file. Follow streams tail -f and stops it on the far side when you stop. ⌘C gives you the text, so it goes straight into Compare with Clipboard

About this data

↓ Download 1.12.5 (.dmg)